// pages/roomDetail/roomDetail.js
const app = getApp()
var that;
var util = require('../../utils/util.js');
Page({

  data: {

    // 此处为日历自定义配置字段
    calendarConfig: {
      // multi: true, // 是否开启多选,
      theme: 'default', // 日历主题，目前共两款可选择，默认 default 及 elegant，自定义主题在 theme 文件夹扩展
      showLunar: false, // 是否显示农历，此配置会导致 setTodoLabels 中 showLabelAlways 配置失效
      inverse: true, // 单选模式下是否支持取消选中,
      // chooseAreaMode: true, // 开启日期范围选择模式，该模式下只可选择时间段
      // markToday: '今', // 当天日期展示不使用默认数字，用特殊文字标记
      defaultDay: true, // 默认选中指定某天 '2020-2-23' ；当为 boolean 值 true 时则默认选中当天，非真值则在初始化时不自动选中日期，
      highlightToday: true, // 是否高亮显示当天，区别于选中样式（初始化时当天高亮并不代表已选中当天）
      // takeoverTap: true, // 是否完全接管日期点击事件（日期不会选中），配合 onTapDay() 使用
      // preventSwipe: true, // 是否禁用日历滑动切换月份
      // disablePastDay: true, // 是否禁选当天之前的日期
      // disableLaterDay: true, // 是否禁选当天之后的日期
      firstDayOfWeek: 'Sun', // 每周第一天为周一还是周日，默认按周日开始
      // onlyShowCurrentMonth: true, // 日历面板是否只显示本月日期
      // hideHeadOnWeekMode: true, // 周视图模式是否隐藏日历头部
      showHandlerOnWeekMode: true // 周视图模式是否显示日历头部操作栏，hideHeadOnWeekMode 优先级高于此配置
    },
    riqi:"",
  },


  onLoad: function (options) {
    that = this;

    let now = new Date();
    let year = now.getFullYear();
    let month = now.getMonth() + 1;
    let day = now.getDate();

    that.setData({
      riqi: year + "-" + month + "-" + day
    })

    wx.getStorage({
      key: 'roomItemObj',
      success: function (res) {
        that.setData({
          roomObj: res.data
        })
        wx.removeStorageSync('roomItemObj')
        that.getRoomDetailFun();
      },
    })
  },

  // 获取room下的会议列表
  getRoomDetailFun:function(){
    wx.request({
      url: app.http + 'hysMeeting/meetingListByRoomIDAndDate',
      data: {
        meetingRoomId: that.data.roomObj.id,
        riqi: that.data.riqi
      },
      method: 'get',
      header: {
        'content-type': 'application/json', // 默认值
        'APP-User-Token': app.globalData.tokenMap.access_token
      },
      success: function (res) {
        console.log("获取room下的会议列表suc返回", res)
        if (res.data.code == 200) {
          that.setData({
            meetingList: res.data.data
          })
          console.log("data", that.data)
        }
        else if (res.data.code == 100101) {
          // token无效，获取新的token
          var newToken = util.refreshTokenFun(app.globalData.tokenMap.refresh_token).then(
            function (res) {
              if (res.data.code == 200) {
                that.getRoomDetailFun();
              }
              else if (res.data.code == 400) {
                var wxLoginFun = util.wxLoginFun().then(
                  function (res2) {
                    if (res2.data.code == 200) {
                      that.getRoomDetailFun();
                    }
                  }
                )
              }
            }
          ).catch(
            function (err) {
              console.log("获取新的token失败返回", err)
            }
          )
        }
      },
      fail: function (err) {
        console.log("fail返回", err)
      }
    })
  },

  // 跳转会议详情
  toMeetingDetailFun:function(e){
    wx.navigateTo({
      url: '/pages/meetingDetail/meetingDetail',
    })
  },

  // 创建会议
  toCreatMeetingFun: function () {
    wx.navigateTo({
      url: '/pages/meetingCreate/meetingCreate',
    })
  },


    /**
     * 选择日期后执行的事件
     * currentSelect 当前点击的日期
     * allSelectedDays 选择的所有日期（当mulit为true时，allSelectedDays有值）
     */
    afterTapDay(e) {
      console.log('选择日期后执行的事件 afterTapDay', e.detail); // => { currentSelect: {}, allSelectedDays: [] }
      
    },
    /**
     * 当日历滑动时触发(适用于周/月视图)
     * 可在滑动时按需在该方法内获取当前日历的一些数据
     */
    onSwipe(e) {
      console.log('onSwipe', e.detail);

      // const dates = this.calendar.getCalendarDates();
      // console.log("日历dates：", dates)
    },
    /**
     * 当改变月份时触发
     * => current 当前年月 / next 切换后的年月
     */
    whenChangeMonth(e) {
      console.log('whenChangeMonth', e.detail);
      // => { current: { month: 3, ... }, next: { month: 4, ... }}
      that.setData({
        year: e.detail.next.year,
        month: e.detail.next.month
      })
      // that.data.calendarConfig.defaultDay = e.detail.next.year + '-' + e.detail.next.month + "-" +that.data.day;
      // that.setData({
      //   calendarConfig: that.data.calendarConfig
      // })
      // this.calendar.jump(e.detail.next.year, e.detail.next.month, that.data.day);

      // that.getCalendarListFun();
    },
    /**
     * 周视图下当改变周时触发
     * => current 当前周信息 / next 切换后周信息
     */
    whenChangeWeek(e) {
      console.log('whenChangeWeek', e.detail);
      // {
      //    current: { currentYM: {year: 2019, month: 1 }, dates: [{}] },
      //    next: { currentYM: {year: 2019, month: 1}, dates: [{}] },
      //    directionType: 'next_week'
      // }
    },
    /**
     * 日期点击事件（此事件会完全接管点击事件），需自定义配置 takeoverTap 值为真才能生效
     * currentSelect 当前点击的日期
     */
    onTapDay(e) {
      console.log('onTapDay', e.detail); // => { year: 2019, month: 12, day: 3, ...}


    },
    /**
     * 日历初次渲染完成后触发事件，如设置事件标记
     */
    afterCalendarRender(e) {
      console.log('afterCalendarRender', e);
      // 切换为周视图
      this.calendar.switchView('week').then(() => { });
    },
  
})